package com.ruoyi.cbs.project.domain;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 项目人员对象 cbs_project_personnel
 * 
 * @author ruoyi
 * @date 2025-11-12
 */
public class ProjectPersonnel extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键 */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    /** 项目id */
    @Excel(name = "项目id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long projectId;

    /** 承包商用户id */
    @Excel(name = "承包商用户id")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long personnelId;

    /** 承包商用户名称 */
    @Excel(name = "承包商用户名称")
    private String personnelName;

    /** 人员类型 */
    @Excel(name = "人员类型")
    private String personType;

    /** 培训状态：0未培训 1培训中 2已完成 */
    @Excel(name = "培训状态：0未培训 1培训中 2已完成")
    private String trainStatus;

    /** 状态：1-在场 0-离场 */
    @Excel(name = "状态：1-在场 0-离场")
    private String status;

    /** 删除标志（1代表存在 0代表删除） */
    private String delFlag;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setProjectId(Long projectId)
    {
        this.projectId = projectId;
    }

    public Long getProjectId() 
    {
        return projectId;
    }

    public void setPersonnelId(Long personnelId) 
    {
        this.personnelId = personnelId;
    }

    public Long getPersonnelId() 
    {
        return personnelId;
    }

    public void setPersonnelName(String personnelName) 
    {
        this.personnelName = personnelName;
    }

    public String getPersonnelName() 
    {
        return personnelName;
    }

    public void setPersonType(String personType) 
    {
        this.personType = personType;
    }

    public String getPersonType() 
    {
        return personType;
    }

    public void setTrainStatus(String trainStatus) 
    {
        this.trainStatus = trainStatus;
    }

    public String getTrainStatus() 
    {
        return trainStatus;
    }

    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }

    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("projectId", getProjectId())
            .append("personnelId", getPersonnelId())
            .append("personnelName", getPersonnelName())
            .append("personType", getPersonType())
            .append("trainStatus", getTrainStatus())
            .append("status", getStatus())
            .append("delFlag", getDelFlag())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
